package com.shujia

import scala.beans.BeanProperty

class Demo07ScalaClass {
  // 定义属性
  var id: String = "001"
  val name: String = "zs"
  @BeanProperty var age: Int = 20

  // 定义方法
  def func01(): Unit = {
    println(s"$id,$name,$age")
  }

}

object Demo07ScalaClass {
  def main(args: Array[String]): Unit = {
    // 通过创建类的对象获取定义好的属性以及方法
    // 创建对象的过程即实例化过程
    val c1: Demo07ScalaClass = new Demo07ScalaClass()

    println(c1.id)
    println(c1.name)
    println(c1.age)

    c1.func01()

    // 修改对象的属性
    c1.id = "002"

    //    c1 = new Demo07ScalaClass()

    val c2: Demo09ScalaClassAccessControl = new Demo09ScalaClassAccessControl("理科一班")
    println(c2.id)
    println(c2.name)
    //    println(c2.age) // 无法获取age属性 因为由private修饰了

  }

}
